package controle;

import java.io.Serializable;
import javax.faces.application.FacesMessage;
import javax.faces.context.FacesContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

/**
 *
 * @author Jorge
 */
public class BaseMB implements Serializable {
    
    /**
     * Recupera um atributo da sessão ou <code>null</code> se não existir nenhum
     * atributo com o nome procurado.
     * 
     * @param   nomeAtributo
     *          o nome do atributo a ser recuperado
     * @return  o atributo desejado
     */
    public Object getAtributoDaSessao(String nomeAtributo) {
        FacesContext facesContext = FacesContext.getCurrentInstance();
        
        HttpServletRequest request = (HttpServletRequest) facesContext.getExternalContext().getRequest();
        
        HttpSession sessao = request.getSession();
        return sessao.getAttribute(nomeAtributo);
    }

    protected void error(final String message) {
        FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, message, message));
    }

    protected void info(final String message) {
        FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, message, message));
    }
}
